<?php
/**
 * <https://y.st./>
 * Copyright © 2016 Alex Yst <mailto:copyright@y.st>
 * 
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <https://www.gnu.org./licenses/>.
**/

$xhtml = array(
	'<{title}>' => "Taxes should be fileable electronically directly through the $a[IRS] website, but they are not",
	'<{body}>' => <<<END
<p>
	While working on my code that validates the syntax of a $[URI], I ran into an issue.
	My regular expression for parsing a $a[URI] assumes that hosts do not contain colons.
	However, a host is allowed to be an $a[IPv6] address as long as it is enclosed in brackets.
	I thought that I was not going to be able to figure out how to fix the expression and I was going to have to split it into two expressions.
	The first would have parsed most of the information out of the URI but leave the host and port components tangled.
	The second would have separated the host and port from one another.
	If I could guarantee that my expression would only be used on $a[URI]s that conform to the valid syntax, I could easily parse using only one expression, but because invalid $a[URI]s may be passed in, I have to be able to account for them.
	Though by default, $a[URI]s parsed will be run through a syntax validator after being run through the regular expression, the validator needs to be able to tell for sure which part of a malformed $a[URI] is the malformed part.
	Likewise, if the validation is intentionally disabled, the parsing function needs to output the closest approximation of a correct parse.
	After much struggle, I finally succeeded in writing a single expression that I think will work as best as possible even on malformed $a[URI]s.
</p>
<p>
	My task for today was to file my taxes.
	Unfortunately, the $a[IRS] does not allow people to electronically file their taxes through their own website.
	Instead, taxpayers are required to enlist help from third-party corporations for this.
	Not having the energy to deal with paper mail forms right now, I chose one of the listed third-party corporations and got started.
	It was not a fun experience.
	My first complaint about TurboTax that the site&apos;s form began by sniffing my User-Agent string.
	Any site that does that is poorly-built and likely relies on browser-specific hacks instead of standards-compliant code.
	It detected that I am using Linux, and said that &quot;some visual elements may not render perfectly&quot;.
	Why does in matter if visual elements render perfectly anyway? If that matters so much, I repeat: use standards-complaint code so that your pages will render as perfectly as possible in every Web browser.
	The form allowed me to continue though, so I did.
	The site asked for a telephone number near the beginning, though I left it blank and the form allowed me to continue.
	It was only <strong>*after*</strong> I had entered all my information that the site admitted that they were not actually going to allow me to leave that field blank, and it began demanding that i enter a telephone number.
	This is extremely dishonest and manipulative! My guess is that they want to wait until you reach the end to push because they figure that you will not want to reenter your information on another site, so you will find a way to get ahold of a telephone number to give them if they demand it at the end.
	They would not even allow me to print my taxes and file via postal mail without handing over a telephone number! They have a support option, but it too requires a telephone number to use, and from the looks of it, you enter your telephone number and then a representative will call you when they can.
	In other words, you cannot get help with the fact that they do not allow you to move on without telephone service! They have a secondary help option, but it is a community forum.
	It is unlikely that the people that can actually fix this look over the questions, but I <a href="https://ttlc.intuit.com/questions/3009659">posted there anyway</a> just in case.
	After a while, I decided to edit the page in-browser to disable the validation of that input field.
	After several tried, I managed to get it to act as an optional input field so I could move on.
	The next page of the form asked how I wanted my refund returned to me, but I found that the site tries to discourage the paper check option.
	Instead, they prefer that you either hand TurboTax your bank account information so that you can get your refund deposited directly into your account, meanwhile TurboTax then has your bank account information for their own records and uses, or take your refund in the form of a prepaid card, in which case TurboTax can charge you fees as you use it, can track your purchases, and can prevent you from depositing the money into an account to make interest.
	Of course, the paper check option is the safest option, so I chose that.
	Next, I was asked for state-issued $a[ID], though this was optional, so I skipped it.
	Once more, the site demanded a telephone number, and due to the site&apos;s use of multi-page validation, I was unable to evade the requirement any more.
	I tried going back and handing over my state-issued $a[ID], but that did not fix the problem.
	I had to discard my tax submission, and I will submit using another site.
	I will make note of the fact that TurboTax is underhanded and will not make use of their services ever again.
	On the plus side, if I give up on using another site, I was able to get a printable copy of my tax return just after having hacked my way past the first telephone number demand page.
	I do not recommend TurboTax at all.
</p>
<p>
	Next, I tried using Jackson Hewitt&apos;s tax preparation service.
	First, these idiots claimed that they needed to confirm my identity by sending me a verification email.
	Believe me, I love verification emails, as they prevent people from using my email address to sign up for services and leave me with all the emails from the services.
	However, at this point in the registration process, they had not even so much as asked for my name, not to mention that email address verification only verifies that you have access to a given email account.
	This verification <strong>*does not*</strong> verify your identity.
	I am glad that unlike TurboTax, they verified my email address, but they need to call it what it is: email address verification, not identity verification.
	I was just going to let that slide though.
	A little later in the form, they asked me to give my consent for them to process my information for tax filing purposes by typing my full legal name.
	So I typed my first and last legal name, which I consider to be my full legal name even though it is not my real name, but they did not accept that.
	Next, I tried my first, middle, and last legal names, but they did not accept that either.
	It turned out that what they wanted was my first legal name, my middle legal initial, and my last legal name.
	That is not my full legal name in any sense of that phrase! If an initial is used at all, it is not a full name.
	I was aggravated by this, but I of course continued.
	Next, I hit the wall in their service.
	They too require a telephone number, though at least they admit it up front.
	They do not allow you to leave it blank so that you enter all the rest of your information, then demand the telephone number later.
	While Jackson Hewitt&apos;s tax preparation service seems to contain idiocies, at least they do not appear to contain dishonesty.
	They are upfront about what they demand.
	I was going to leave and look for another tax e-filing service, but I noticed a &quot;live chat&quot; option as I was starting to log out.
	Their live chat support people were offline by the time I was using their site, but the times that they are online were listed.
	I will speak with them tomorrow and see if anything can be done.
	As a last resort, as I said earlier, I have a printable copy of the filled forms, so I can mail them in if every service listed on the $a[IRS] website demands a telephone number.
</p>
<p>
	I received an email from the <a href="https://en.wikipedia.org/wiki/Albanian_mafia">Albanian mafia</a>, offering their services as hitmen.
	First, they explained about $a[Tor] a little, then onion space and how to reach it.
	The short $a[Tor] lesson was amusing, though I do not like the negative light that they shine on onion space.
	Of course, there is the issue of them killing people, which is not something that I condone, but also, they say that it is used by criminals (not only themselves, either) to evade the law.
	To someone that does not already know about onion space, it makes it sound like onion space is simply a place for criminals.
	There is more here than that though.
	There are illegal things here, that is true, but there are also semi-private things such as the site of someone I know that prefers not to be mentioned, silly things such as <a href="http://2v7ibl5u4pbemwiz.onion/">Anonymous Cat Facts</a>, freedom of information sites such as <a href="http://52wdeibt3ivmcapq.onion/">Liberated Books and Papers</a>, anti-$a[DRM] sites such as the <a href="http://c3jembnkdnbcdniu.onion/">Radical Militant Library</a> (which is not really all that militant as far as I can tell), public tools such as <a href="http://ypbnurlwfis7xsei.onion/">Anon PasteBin</a>, and sites that just want to be slightly detached from the legal identity of the webmaster and run from behind the walls put up by a restrictive $a[ISP], such as my own site here.
	There is more here in onion space than just murder and illegal drugs.
</p>
END
);
